草庐IT

Where 条件

全部标签

mongodb - MongoDb 聚合中的条件展开?

我想弄清楚是否有一种方法可以在MongoDB的聚合框架中编写条件展开。我有一个这样的聚合命令:models.Users.aggregate({//SELECT$project:{"sex":1,"salesIndex":1}},{//WHERE$match:{"salesIndex":{$gte:index}}},{//GROUPBYyagregadores$group:{_id:"$sex",sexCount:{$sum:1}}},{$sort:{sexCount:-1}},function(err,dbres){(...)});我想按部门添加可选过滤器。一个用户可以在一个或多个部门

ruby-on-rails - 如何根据多个条件查找嵌入式 Mongoid 文档?

我有一个包含嵌入式文档的Mongoid文档。我想在顶级文档中搜索所有具有多个条件的嵌入式文档。TopDoc.where('inside.first_name'=>'Bob','inside.last_name'=>'Jones')但在我看来,这会与BobWever和PaulJones在TopDoc上匹配,这是错误的。 最佳答案 您需要使用$elemMatch.对于Mongoid,以下行应该可以解决问题TopDoc.elem_match(inside:{first_name:'Bob',last_name:'Jones'})相当于:T

在实例化时通过条件取消项目

我有这个课publicclassItem{publicintProp1{get;set;}publicItem(stringvalue){inttemp;if(int.TryParse(value,outtemp)){Prop1=temp;}else{this=null;}}}但this=null;不编译。有可能做出这种行为吗?Itemfoo=newItem("x");//foo==nullbecause"x"can'tbeparsedintoint看答案您可以创建静态方法来创建项目:publicclassItem{publicintProp1{get;set;}publicItem(intv

JavaScript React组件条件菜单项显示

我有一个React组件,并且添加了2个链接。一个链接将显示登录链接,另一个链接显示注销。我只是不希望两者都显示,所以在componentdidmount上,我添加了一个条件,该条件将隐藏一个或另一个。这是代码:classNavigationextendsComponent{componentDidMount(){letlogged=true;if(logged){document.getElementById('login').style.display='none';}else{document.getElementById('logout').style.display='none';}}

mongodb - 当前字段的聚合条件计数

我正在尝试编写一个聚合来计算有多少文档具有某些字段(即只计算它们是否存在)。对象看起来像这样:{"_id":ObjectId("5617731fe65e0b19101c7039"),"dateCreated":ISODate("2015-10-09T07:56:15.068Z"),"dateSent":ISODate("2015-10-09T07:56:16.682Z"),"dateAttempted":ISODate("2015-10-09T07:56:16.682Z")},{"_id":ObjectId("561e37bb537d381bb0ef0ae2"),"dateCreate

具有多个条件的 MongoDB 查询

我有多个文档的数据:{"_id":ObjectId("57b68dbbc19c0bd86d62e486"),"empId":"1""type":"WebUser","city":"Pune"}{"_id":ObjectId("57b68dbbc19c0bd86d62e487"),"empId":"2""type":"Admin","city":"Mumbai"}{"_id":ObjectId("57b68dbbc19c0bd86d62e488"),"empId":"3""type":"Admin","city":"Pune"}{"_id":ObjectId("57b68dbbc19c0

mongodb - MongoDB 中的条件更新

我已经在LinkedIn上回答了这个问题,我认为分享它有用且有趣。问题是:“假设我们有像{_id:...,data:...,timestamp:...}这样的文档。有什么方法可以编写满足以下规则的更新条件:1如果后面没有_id的文档则插入这个文档;2如果存在具有以下_id的文档则2.1如果新的时间戳大于存储的时间戳则更新data;2.2否则什么也不做” 最佳答案 下面的解决方案应该可以解决问题,您只需要忽略双键错误。示例在Mongoshell中给出:>varlastUpdateTime=ISODate("2013-09-10")>v

javascript - 至少将数组的 “N”元素与条件列表匹配

我有以下情况:我的一个mongo馆藏包含以下格式的文档:user:"test",tracks:[{artist:"A",...},{artist:"B",...},...,{artist:"N",...}]我想提取所有曲目,它们的艺术家在给定的数组arr中。为此,我使用以下查询(工作正常)。collection.find({tracks:{$elemMatch:{artist:{$in:arr}}}})但是,现在我想修改查询,使其仅返回集合中具有至少由arr数组中的3位艺术家执行的曲目的文档。我怎样才能做到这一点(除了将结果从数据库返回后进行过滤之外,这不是一种选择)?

php - Mongo 相当于 `select distinct(name) from employee where age = "2 5"`

我需要帮助找到不同的值,但我还需要提供过滤条件。我以这种方式管理了distinct:$unique=$db->command(array("distinct"=>"employee","key"=>"name"));如何向其中添加“whereage="25""子句?谢谢你的帮助! 最佳答案 MongoDBshell中的distinct()和distinct命令都带有一个query参数,用于过滤记录集在确定不同的键值时要考虑的因素。在您的示例中,您可以:db.employee.distinct("name",{"age":25})在M

mongodb - 使用多个条件从 mongo db 中的集合中删除数据

我是mongo数据库的新手使用我必须从表中删除数据,例如selectfromtablewhereid=12andbrowser=GC但我不知道如何在mongodb中执行此操作? 最佳答案 使用removedb.collectionName.remove({'_id':12,'browser':"GC"})如果您出示您的收藏和文件,可以提供更准确的答案。 关于mongodb-使用多个条件从mongodb中的集合中删除数据,我们在StackOverflow上找到一个类似的问题: